package com.example.mysql.学习笔记.基础.查询;

public class 子查询 {
}
/**
 * 内部比较
 *
 *
 * 外查询(主查询)和内查询（子查询）
 *      子查询(内查询)在主查询之前一次执行完成。
 *      子查询的结果被主查询( 外查询)使用
 *      注意事项
 *          子查询要包含在括号内
 *          将子查询放在比较条件的右侧(主要为了可读性)
 *          单行操作符对应单行子查询，多行操作符对应多行子查询
 *
 *  角度1:单行子查询(只查出来一条数据)vs多行子查询(查出来多条数据)
 *  角度2: 内查询是否被执行多次 相关子查询 VS 不相关子查询
 *
 *  WHERE (字段1,字段2) = (
 *                      select 字段1,字段2
 *                      FROM 表名
 *                      WHERE 查询条件
 *                      )
 *
 * 这个子查询  也可以在别的地方
 * 如果  子查询出来的没有值   就相当于NULL
 *
 * IN          等于列表中的任意一个
 * ANY         需要和单行比较操作符一起使用， 和子查询返回的某-个值比较
 * ALL         需要和单行比较操作符一起使用，和子查询返回的所有值比较
 *
 * SOME        实际上是ANY的别名，作用相同，- -般常使用ANY
 *
 * mysql聚合函数  不可以嵌套
 * 查询平均工资最低的部门id
 * 可以先将平均工资查出来  当成一个表  在操作  （注意 要加别名）
 *  效率高低   下篇再将
 *
 */

/**
 * 相关子查询
 *
 * 就是  内部的语句   用到了  外部的表信息
 *
 */
